package pref.junx.flybird.api;


import java.util.List;

import pref.junx.flybird.base.BaseResult;
import pref.junx.flybird.entity.Bean;
import pref.junx.flybird.entity.DailyBean;
import pref.junx.flybird.entity.Daily_result;
import pref.junx.flybird.entity.Event;
import pref.junx.flybird.entity.FriendShip;
import pref.junx.flybird.entity.Group;
import pref.junx.flybird.entity.His_dai_bean;
import pref.junx.flybird.entity.His_dai_result;
import pref.junx.flybird.entity.Reg_user;
import pref.junx.flybird.entity.Register;
import pref.junx.flybird.entity.Register_result;
import pref.junx.flybird.entity.ReportBean;
import pref.junx.flybird.entity.Requstreport;
import pref.junx.flybird.entity.ResultBean;
import pref.junx.flybird.entity.TeacherReportDayVO;
import pref.junx.flybird.entity.User;
import pref.junx.flybird.entity.User_idea;
import retrofit2.http.Body;
import retrofit2.http.POST;
import rx.Observable;

/**
 * Created by 半生瓜 on 2017/7/14.
 */
//todo api地址集合
public interface RetrofitService {
    //    @POST("login")
//    Observable<BaseResult<User>> login(@Body User user);
    //// TODO: 2017/8/21
    //todo 格式：@请求类型（尾URL） Observable<解析实体类型> 方法名 (@添加部位 传入类型 传入类型对象名);
    @POST("user/userlogin")
    Observable<ResultBean<User_idea>> login(@Body User user);

    @POST("/user/userregister")
    Observable<ResultBean<Boolean>> regsiterE(@Body Register register);

    @POST("reg")
    Observable<Register_result> regsiter(@Body Reg_user reg_user);

    @POST("/user/userupdinfo")
    Observable<ResultBean<Boolean>> UPDATA(@Body User_idea reg_user);

    @POST("reportclass")
    Observable<BaseResult> reportclass(@Body Bean<ReportBean> beanBean);

    @POST("reportDaily_save")
    Observable<Daily_result> reportDaily(@Body Bean<DailyBean> beanBean);

    @POST("reportcoursemouth_sum")
    Observable<BaseResult<List<TeacherReportDayVO>>> requstrep(@Body Bean<Requstreport> beanBean);

    @POST("reportcoursemouth")
    Observable<BaseResult<List<TeacherReportDayVO>>> requstrepday(@Body Bean<Requstreport> beanBean);

    @POST("reportDaily")
    Observable<His_dai_result> hisDaily(@Body Bean<His_dai_bean> beanBean);

    @POST("/user/userupdinfo")
    Observable<ResultBean<Boolean>> updata_user_info(@Body User_idea user);
    @POST("event/selectUserEvent")
    Observable<ResultBean<List<Event>>>getUserEvents(@Body int string);
    @POST("event/deleteEvent")
    Observable<ResultBean<Boolean>> deleteEvent(@Body int id);
    @POST("event/addUserEvent")
    Observable<ResultBean<Boolean>> sendEvent(@Body Event event);
    @POST("friendship/selectfri")
    Observable<ResultBean<List<User_idea>>> getUserFRI(@Body int user_id);
    @POST("friendship/delefri")
    Observable<ResultBean<Boolean>>  deleteFri(@Body FriendShip f);
    @POST("friendship/addfri")
    Observable<ResultBean<Boolean>>  addfri(@Body FriendShip f);
    @POST("group/selectgro")
    Observable<ResultBean<List<Group>>> getgroups(@Body int id);
    @POST("group/selectgro")
        //// TODO: 2018/5/12 接口还没做好
    Observable<ResultBean<Group>>getgroupMsg(int id);
    @POST("group/selectUserInGroup")
    Observable<ResultBean<List<User_idea>>> getUser(@Body int id);
}
